#ifndef CHARTFIGURE_H
#define CHARTFIGURE_H

#include <QWidget>
/*-------------曲线类-----------------*/
#include <QtCharts> //QDir
#include <QtCharts/QChartView>  //视图类,可以显示图表
#include <QtCharts/QSplineSeries>
#include <QDateTimeAxis>    //将日期时间添加到图表轴上
#include <QValueAxis>
#include "QDateTime"
/*-----------------------------------*/
namespace Ui {
class ChartFigure;
}


class ChartFigure : public QWidget
{
    Q_OBJECT

public:
    explicit ChartFigure(QWidget *parent = nullptr);
    ~ChartFigure();

    void DrawLine(qreal, qreal, qreal);  //画线（这里可以考虑使用函数数组）

public slots:
    void btn_chart_dark_click();     //深色主题
    void btn_chart_light_click();    //浅色主题
    void cb_temper_show();           //温度曲线显示复选框
    void cb_flow_show();             //流量曲线显示复选框
    void cb_show_all();              //全部曲线显示复选框
    void cb_hide_all();              //全部曲线不显示复选框

private:
    Ui::ChartFigure *ui;

    bool device_connect = false;  //设备连接状态，用于曲线判断是否更新数据
    QTimer *chart_timer;          //计时器
    QChart *chart;                //画布
    QSplineSeries *series1;       //线1
    QSplineSeries *series2;       //线2
    QDateTimeAxis *axisX;         //X轴
    QValueAxis *axisY;            //Y轴

    void chart_init();          //图表初始化
    void check_chart_state();   //检查曲线显示的状态
};

#endif // CHARTFIGURE_H
